package com.java.dao;

import com.java.bean.Courier;

import java.util.List;
import java.util.Map;

public interface BaseCourierDao {
    /**
     * 查询数据库中所有的快递员数
     * @return
     */
    List<Map<String,Integer>> console();


    /**
     * 查询所有的快递列表
     * @param limit 是否分页查询
     * @param offset 起始值
     * @param pageNumber 查询页数
     * @return
     */
    List<Courier> findAll(boolean limit, int offset, int pageNumber);

    /**
     * 根据id查询快递
     * @param id
     * @return
     */
    Courier findById(int id);

    /**
     * 根据快递员姓名名查询
     * @param courierName
     * @return
     */
    List<Courier> findByName(String courierName);

    /**
     * 根据身份证查询
     * @param courierIdNumber
     * @return
     */
    Courier findByIdNumber(String courierIdNumber);


    /**
     * 根据快递员手机号查询
     * @param courierPhone
     * @return
     */
    Courier findByPhone(String courierPhone);

    /**
     * 快递员的录入
     * @return
     */
    boolean insert(Courier c);

    /**
     * 信息修改
     * @param id
     * @param newCourier
     * @return
     */
    boolean update(int id,Courier newCourier);


    /**
     * 派件数修改
     * @param id
     * @param increment
     * @return
     */
    boolean updateSendNumber(int id,int increment);

    /**
     * 更新登录时间
     * @param id
     * @return
     */
    boolean updateLoginTime(int id);

    /**
     * 根据id删除信息
     * @param id
     * @return
     */
    boolean delete(int id);
}
